const fs = require('fs');

// 读文件
/* fs.readFile('./a.txt', {
  encoding: 'utf8'
} ,(err, data) => {
  if(err){
    console.log('出错了');
    return false;
  }
  console.log(data);
})
 */
/* 
  异步
  异步回调函数 设计规范
    回调错误优先
      将错误 作为回调函数的第一个参数，回调中的业务代码，应该首先判断错误，有错误 
      停止执行后续代码

*/
/* 
let data = '';

try{
  data = fs.readFileSync('./b.txt', {
    encoding: 'utf-8'
  })
}catch(err){
  console.log('读取失败');
}
console.log(222); */

// 写文件
// 不存在 和已经存在

/* fs.writeFile('./b.txt', 'node不好学11111', (err) => {
  if(err){
    console.log('写入失败');
  }
}) */

/* try{
  fs.writeFileSync('./c.txt', '这是一个新的文本')
}catch(err){
  console.log('写入失败');
} */

// 追加 内容
/* fs.appendFile('./b.txt', '这是追加内容', (err) => {
  if(err){
    console.log('追加失败');
  }
}) */

/* try{
  fs.appendFileSync('./b.txt', '这是同步方法追加的')
}catch(err){
  console.log('追加失败');
}  */
// 删除
fs.unlink('./a.txt', (err) =>{
  if(err){
    console.log('删除失败');
  }
})